/**
 * 
 */
package br.com.io.teste;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;
import br.com.io.dao.ClienteDao;
import br.com.io.modelo.Cidade;
import br.com.io.modelo.Cliente;
import br.com.io.modelo.Grupocli;





/**
 * @author Lincoln
 *
 */
public class TesteSelect {

	/**
	 * @param args
	 */
	public static void main(String[] args) {


		 Configuration configuration = new AnnotationConfiguration();
		    configuration.configure();
		     SessionFactory sf = configuration.buildSessionFactory();
		    Session s = sf.openSession();
		    Session s1 = sf.openSession();
		    Session s2 = sf.openSession();
     /*
      * 
      * PESQUISA
			
Cliente cli = (Cliente) s.load(Cliente.class, 1l);
		
		System.out.println("o select ja foi feito");
		
		System.out.println("Teste Nome: "+cli.getNomeCli());
		System.out.println("Teste Cadade: "+cli.getCidadeBean().getDescricaoCidade());
		System.out.println("Teste Estado: "+cli.getCidadeBean().getEstado());
		System.out.println("Teste Grupo: "+cli.getGrupocli().getNomeGrupo());
		System.out.println(cli.getClass());
		
		*/
		    
		    /*
		    //SALVA
		    
		  
		    GrupoCliDao dao = new GrupoCliDao(s);
			Grupocli grupo = new Grupocli();
			grupo.setIdgrupoCli((long) 1);
			grupo.setNomeGrupo("Io");
			
			
			s.beginTransaction();
			dao.salva(grupo);
			s.getTransaction().commit();
			
			s.close();

		    
		   
		    System.out.println("Nome Cidade"+grupo.getNomeGrupo());
		   // System.out.println("Nome Grupo "+grup.getNomeGrupo());
		*/
		    ClienteDao dao = new ClienteDao(s);
		    
		    Cidade cid = (Cidade) s1.load(Cidade.class, 1l);
		    
		    Grupocli grupo = (Grupocli) s2.load(Grupocli.class, 2l);
		    
		    Cliente cli = new Cliente();
		    cli.setNomeCli("TesteMae");
		    cli.setGrupocli(grupo);
		    cli.setCidadeBean(cid);
		    
		    s.beginTransaction();
			dao.salva(cli);
			s.getTransaction().commit();
			
			s.close();
		    
	}

}
